package com.basej.junit.utils;

import org.junit.*;

/**
 * 单元测试
 * 1、引入依赖 junit4
 * 2、创建一个公共无返回的方法
 * 3、添加@Test注解
 * 4、执行方法测试
 * 5、执行类中所有的测试方法
 * -- 公共部分提炼  Before After
 * -- 静态资源使用BeforeClass AfterClass
 */
public class StringUtilsTest {

    @Before
    public void before(){
        //所有测试方法执行之前，执行一次
        System.out.println("before 执行了");
    }

    @BeforeClass
    public static void beforeClass(){
        //所有测试方法执行之前，执行一次
        System.out.println("beforeClass 执行了");
    }

    @After
    public void after(){
        //所有测试方法执行之前，执行一次
        System.out.println("after 执行了");
    }

    @AfterClass
    public static void afterClass(){
        //所有测试方法执行之前，执行一次
        //
        System.out.println("afterClass 执行了");
    }

    @Test
    public void testPrintNumber(){
        StringUtil.printLength("nihao");
        StringUtil.printLength(null);
    }

    //测试方法
    @Test
    public void testGetMaxIndex(){
        int index1 = StringUtil.getMaxIndex(null);
        System.out.println(index1);

        int index2 = StringUtil.getMaxIndex("admin");
        System.out.println(index2);

        //断言机制：预测业务结果判断 assert
        Assert.assertEquals("方法逻辑有问题",4,index2);


    }
}
